import pandas as pd
import nibabel as nib
import pathlib as pal
from nilearn import plotting #Abraham, A. et al. Machine learning for neuroimaging with scikit-learn. Front. Neuroinform. 8, 14 (2014).
from nilearn import input_data as nii
from nilearn import plotting as nlp
from matplotlib import pyplot as plt
import nilearn.plotting as nip
from niwidgets import NiftiWidget ## https://github.com/nipy/niwidgets
from IPython.display import Image, display
mist_64_p = '/Users/Clara/Desktop/MIST/Parcellations/MIST_64.nii.gz'
labels_p = '/Users/Clara/Desktop/MIST/Parcel_Information/MIST_64.csv'
mist64_i = nib.load(mist_64_p)
mist64 = mist64_i.get_data()
labels = pd.read_csv(labels_p, delimiter=';')
mask = mist64_i.get_data().astype(bool)
root_p = pal.Path('/Users/Clara/Desktop/DiGregorio').resolve()
mask_i = nib.Nifti1Image(mask, affine=mist64_i.affine, header=mist64_i.header)
masker = nii.NiftiMasker(mask_img=mask_i, standardize=False)
masker.fit()
atlas_vec = masker.fit_transform(mist64_i).squeeze() - 1
display(Image(filename='/Users/Clara/Desktop/DiGregorio/atlas_cereb.png'))
#MIST64 = NiftiWidget('/Users/Clara/Desktop/MIST/Parcellations/MIST_64.nii.gz')
#MIST64.nifti_plotter()
#MIST64.nifti_plotter(plotting_func=nip.plot_glass_brain)
COND_p = root_p / 'CERVM_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CERVM", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CERVM", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="Bipolar CERVM", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_p = root_p / 'CER5_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER5", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER5", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER5", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_p = root_p / 'CER6_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER6", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER6", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER6", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_p = root_p / 'CER7ab_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER7ab", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER7ab", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER7ab", cmap=plt.cm.seismic, vmax=0.5, threshold=0.2)
COND_p = root_p / 'CER7b_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER7b", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER7b", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER7b", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_p = root_p / 'CER9_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER IX", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER IX", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER IX", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_p = root_p / 'CERCR1_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER CRUS I", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER CRUS I", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER CRUS I", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_p = root_p / 'L_CERCR2_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER CRUS II L", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER CRUS II L", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER CRUS II L", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_p = root_p / 'R_CERCR2_seed_minibrain.csv'
COND=pd.read_csv(COND_p, sep=',')
COND_brain_vec = COND.ASD[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="ASD CER CRUS II R", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.SZ[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="SZ CER CRUS II R", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)
COND_brain_vec = COND.BIP[atlas_vec]
COND_brain_img = masker.inverse_transform(COND_brain_vec)
nlp.view_img(COND_brain_img, title="BIP CER CRUS II R", cmap=plt.cm.seismic, vmax=0.5, threshold=0.1)